* tweak greatcircle conversions.
* modify arc-project test to use microdegrees instead of nanodegrees.
* kill unused metric prefix conversion macros.
/* knots(nautical miles/hour) to meters/second */
constexpr double KNOTS_TO_MPS(double a) {return a * kMPSPerKnot;}
-#define MILLI_TO_MICRO(t) ((t) * 1000) /* Milliseconds to Microseconds */
-#define MICRO_TO_MILLI(t) ((t) / 1000) /* Microseconds to Milliseconds*/
-#define CENTI_TO_MICRO(t) ((t) * 10000) /* Centiseconds to Microseconds */
-#define MICRO_TO_CENTI(t) ((t) / 10000) /* Centiseconds to Microseconds */
-
constexpr int kDatumOSGB36 = 86; // GPS_Lookup_Datum_Index("OSGB36")
constexpr int kDautmWGS84 = 118; // GPS_Lookup_Datum_Index("WGS 84")
double* reslat, double* reslon);
/* Degrees to radians */
-constexpr double DEG(double x) { return (x) * 180.0 / M_PI; }
+constexpr double kDegreesPerRadian = 180.0 / M_PI;
+constexpr double DEG(double x) { return x * kDegreesPerRadian; }
/* Radians to degrees */
-constexpr double RAD(double x) { return (x) * M_PI / 180.0; }
+constexpr double kRadiansPerDegree = 1.0 / kDegreesPerRadian;
+constexpr double RAD(double x) { return x * kRadiansPerDegree; }
#endif
--- /dev/null
+No,Latitude,Longitude,Name,Symbol\r
+1,28.356662,-16.497183,"wpt2","flag, red"\r
+2,28.357407,-16.501378,"wpt3","flag, green"\r
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>
-<gpx version="1.0" creator="GPSBabel - https://www.gpsbabel.org" xmlns="http://www.topografix.com/GPX/1/0">
- <time>1970-01-01T00:00:00Z</time>
- <bounds minlat="28.353803737" minlon="-16.502955209" maxlat="28.359546000" maxlon="-16.494318496"/>
- <wpt lat="28.356662000" lon="-16.497183000">
- <name>wpt2</name>
- <cmt>wpt2</cmt>
- <desc>wpt2</desc>
- <sym>flag, red</sym>
- </wpt>
- <wpt lat="28.357407000" lon="-16.501378000">
- <name>wpt3</name>
- <cmt>wpt3</cmt>
- <desc>wpt3</desc>
- <sym>flag, green</sym>
- </wpt>
- <rte>
- <name>Route1</name>
- <rtept lat="28.354379680" lon="-16.495831262">
- <name>RPT001</name>
- </rtept>
- <rtept lat="28.354813996" lon="-16.495434295">
- <name>RPT002</name>
- </rtept>
- <rtept lat="28.355380492" lon="-16.494962226">
- <name>RPT003</name>
- </rtept>
- <rtept lat="28.355946985" lon="-16.494726192">
- <name>RPT004</name>
- </rtept>
- <rtept lat="28.356522916" lon="-16.494490157">
- <name>RPT005</name>
- </rtept>
- <rtept lat="28.356994989" lon="-16.494393598">
- <name>RPT006</name>
- </rtept>
- <rtept lat="28.357646446" lon="-16.494318496">
- <name>RPT007</name>
- </rtept>
- <rtept lat="28.358165720" lon="-16.494415056">
- <name>RPT008</name>
- </rtept>
- <rtept lat="28.358609462" lon="-16.494683276">
- <name>RPT009</name>
- </rtept>
- <rtept lat="28.359147614" lon="-16.495327007">
- <name>RPT010</name>
- </rtept>
- <rtept lat="28.359374203" lon="-16.496067296">
- <name>RPT011</name>
- </rtept>
- <rtept lat="28.359411968" lon="-16.496818315">
- <name>RPT012</name>
- </rtept>
- <rtept lat="28.359355321" lon="-16.497612249">
- <name>RPT013</name>
- </rtept>
- <rtept lat="28.359100408" lon="-16.498416911">
- <name>RPT014</name>
- </rtept>
- <rtept lat="28.359005995" lon="-16.498888980">
- <name>RPT015</name>
- </rtept>
- <rtept lat="28.358987113" lon="-16.499790202">
- <name>RPT016</name>
- </rtept>
- <rtept lat="28.358826611" lon="-16.501227866">
- <name>RPT017</name>
- </rtept>
- <rtept lat="28.358656668" lon="-16.502161275">
- <name>RPT018</name>
- </rtept>
- <rtept lat="28.358052424" lon="-16.502794276">
- <name>RPT019</name>
- </rtept>
- <rtept lat="28.357419853" lon="-16.502944480">
- <name>RPT020</name>
- </rtept>
- <rtept lat="28.356683421" lon="-16.502955209">
- <name>RPT021</name>
- </rtept>
- <rtept lat="28.356135815" lon="-16.502697717">
- <name>RPT022</name>
- </rtept>
- <rtept lat="28.355389933" lon="-16.502150546">
- <name>RPT023</name>
- </rtept>
- <rtept lat="28.355002828" lon="-16.501710664">
- <name>RPT024</name>
- </rtept>
- <rtept lat="28.354521305" lon="-16.500734340">
- <name>RPT025</name>
- </rtept>
- <rtept lat="28.354228613" lon="-16.499983321">
- <name>RPT026</name>
- </rtept>
- <rtept lat="28.353935921" lon="-16.498942624">
- <name>RPT027</name>
- </rtept>
- <rtept lat="28.353803737" lon="-16.497987758">
- <name>RPT028</name>
- </rtept>
- <rtept lat="28.353926479" lon="-16.496775399">
- <name>RPT029</name>
- </rtept>
- <rtept lat="28.353926479" lon="-16.496775399">
- <name>RPT030</name>
- </rtept>
- </rte>
- <trk>
- <name>Track1</name>
- <trkseg>
- <trkpt lat="28.359546000" lon="-16.502867000">
- <time>2011-09-26T00:00:00Z</time>
- </trkpt>
- <trkpt lat="28.359338000" lon="-16.502598000">
- <time>2011-09-26T00:00:04Z</time>
- </trkpt>
- <trkpt lat="28.359270000" lon="-16.502511000">
- <time>2011-09-26T00:00:05Z</time>
- </trkpt>
- <trkpt lat="28.359204000" lon="-16.502291000">
- <time>2011-09-26T00:00:08Z</time>
- </trkpt>
- <trkpt lat="28.359192000" lon="-16.501396000">
- <time>2011-09-26T00:00:18Z</time>
- </trkpt>
- <trkpt lat="28.359106000" lon="-16.501013000">
- <time>2011-09-26T00:00:23Z</time>
- </trkpt>
- <trkpt lat="28.358917000" lon="-16.500654000">
- <time>2011-09-26T00:00:28Z</time>
- </trkpt>
- <trkpt lat="28.358626000" lon="-16.500342000">
- <time>2011-09-26T00:00:33Z</time>
- </trkpt>
- <trkpt lat="28.358246000" lon="-16.500081000">
- <time>2011-09-26T00:00:39Z</time>
- </trkpt>
- <trkpt lat="28.357937000" lon="-16.499408000">
- <time>2011-09-26T00:00:48Z</time>
- </trkpt>
- <trkpt lat="28.357846000" lon="-16.499208000">
- <time>2011-09-26T00:00:51Z</time>
- </trkpt>
- <trkpt lat="28.357735000" lon="-16.499147000">
- <time>2011-09-26T00:00:52Z</time>
- </trkpt>
- <trkpt lat="28.357665000" lon="-16.499194000">
- <time>2011-09-26T00:00:54Z</time>
- </trkpt>
- <trkpt lat="28.357640000" lon="-16.499329000">
- <time>2011-09-26T00:00:55Z</time>
- </trkpt>
- <trkpt lat="28.357788000" lon="-16.499707000">
- <time>2011-09-26T00:01:00Z</time>
- </trkpt>
- <trkpt lat="28.357825000" lon="-16.500150000">
- <time>2011-09-26T00:01:05Z</time>
- </trkpt>
- <trkpt lat="28.357952000" lon="-16.500374000">
- <time>2011-09-26T00:01:08Z</time>
- </trkpt>
- <trkpt lat="28.358219000" lon="-16.500677000">
- <time>2011-09-26T00:01:13Z</time>
- </trkpt>
- <trkpt lat="28.358334000" lon="-16.500943000">
- <time>2011-09-26T00:01:17Z</time>
- </trkpt>
- <trkpt lat="28.358359000" lon="-16.501330000">
- <time>2011-09-26T00:01:21Z</time>
- </trkpt>
- <trkpt lat="28.358330000" lon="-16.501666000">
- <time>2011-09-26T00:01:25Z</time>
- </trkpt>
- <trkpt lat="28.358231000" lon="-16.501900000">
- <time>2011-09-26T00:01:28Z</time>
- </trkpt>
- <trkpt lat="28.357924000" lon="-16.502231000">
- <time>2011-09-26T00:01:34Z</time>
- </trkpt>
- <trkpt lat="28.357698000" lon="-16.502363000">
- <time>2011-09-26T00:01:37Z</time>
- </trkpt>
- <trkpt lat="28.357644000" lon="-16.502394000">
- <time>2011-09-26T00:01:38Z</time>
- </trkpt>
- <trkpt lat="28.357576000" lon="-16.502446000">
- <time>2011-09-26T00:01:39Z</time>
- </trkpt>
- <trkpt lat="28.357330000" lon="-16.502535000">
- <time>2011-09-26T00:01:43Z</time>
- </trkpt>
- <trkpt lat="28.356993000" lon="-16.502545000">
- <time>2011-09-26T00:01:47Z</time>
- </trkpt>
- <trkpt lat="28.356918000" lon="-16.502569000">
- <time>2011-09-26T00:01:48Z</time>
- </trkpt>
- <trkpt lat="28.356687000" lon="-16.502552000">
- <time>2011-09-26T00:01:51Z</time>
- </trkpt>
- <trkpt lat="28.356734000" lon="-16.502402000">
- <time>2011-09-26T00:01:53Z</time>
- </trkpt>
- <trkpt lat="28.356577000" lon="-16.502170000">
- <time>2011-09-26T00:01:57Z</time>
- </trkpt>
- <trkpt lat="28.356407000" lon="-16.501902000">
- <time>2011-09-26T00:02:01Z</time>
- </trkpt>
- <trkpt lat="28.356256000" lon="-16.501634000">
- <time>2011-09-26T00:02:04Z</time>
- </trkpt>
- <trkpt lat="28.355854000" lon="-16.501039000">
- <time>2011-09-26T00:02:13Z</time>
- </trkpt>
- <trkpt lat="28.355698000" lon="-16.500794000">
- <time>2011-09-26T00:02:17Z</time>
- </trkpt>
- <trkpt lat="28.355463000" lon="-16.500421000">
- <time>2011-09-26T00:02:22Z</time>
- </trkpt>
- <trkpt lat="28.355083000" lon="-16.500100000">
- <time>2011-09-26T00:02:28Z</time>
- </trkpt>
- <trkpt lat="28.354960000" lon="-16.499323000">
- <time>2011-09-26T00:02:38Z</time>
- </trkpt>
- <trkpt lat="28.354927000" lon="-16.499073000">
- <time>2011-09-26T00:02:41Z</time>
- </trkpt>
- <trkpt lat="28.354983000" lon="-16.498794000">
- <time>2011-09-26T00:02:44Z</time>
- </trkpt>
- <trkpt lat="28.354923000" lon="-16.498684000">
- <time>2011-09-26T00:02:46Z</time>
- </trkpt>
- <trkpt lat="28.354913000" lon="-16.498582000">
- <time>2011-09-26T00:02:47Z</time>
- </trkpt>
- <trkpt lat="28.354651000" lon="-16.498306000">
- <time>2011-09-26T00:02:52Z</time>
- </trkpt>
- <trkpt lat="28.354870000" lon="-16.497995000">
- <time>2011-09-26T00:02:56Z</time>
- </trkpt>
- <trkpt lat="28.354776000" lon="-16.497697000">
- <time>2011-09-26T00:03:00Z</time>
- </trkpt>
- <trkpt lat="28.354747000" lon="-16.497604000">
- <time>2011-09-26T00:03:01Z</time>
- </trkpt>
- <trkpt lat="28.354516000" lon="-16.497422000">
- <time>2011-09-26T00:03:05Z</time>
- </trkpt>
- <trkpt lat="28.354305000" lon="-16.497400000">
- <time>2011-09-26T00:03:08Z</time>
- </trkpt>
- <trkpt lat="28.354172000" lon="-16.497408000">
- <time>2011-09-26T00:03:09Z</time>
- </trkpt>
- </trkseg>
- </trk>
-</gpx>
--- /dev/null
+No,Latitude,Longitude,Name,Symbol\r
+1,28.358827,-16.501228,"wpt1","flag, green"\r
+2,28.354380,-16.495831,"wpt4","flag, green"\r
+3,28.353926,-16.496775,"wpt5","flag, green"\r
+4,28.358987,-16.499790,"wpt6","flag, green"\r
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>
-<gpx version="1.0" creator="GPSBabel - https://www.gpsbabel.org" xmlns="http://www.topografix.com/GPX/1/0">
- <time>1970-01-01T00:00:00Z</time>
- <bounds minlat="28.353803737" minlon="-16.502955209" maxlat="28.359546000" maxlon="-16.494318496"/>
- <wpt lat="28.358826611" lon="-16.501227866">
- <name>wpt1</name>
- <cmt>wpt1</cmt>
- <desc>wpt1</desc>
- <sym>flag, green</sym>
- </wpt>
- <wpt lat="28.354379680" lon="-16.495831262">
- <name>wpt4</name>
- <cmt>wpt4</cmt>
- <desc>wpt4</desc>
- <sym>flag, green</sym>
- </wpt>
- <wpt lat="28.353926479" lon="-16.496775399">
- <name>wpt5</name>
- <cmt>wpt5</cmt>
- <desc>wpt5</desc>
- <sym>flag, green</sym>
- </wpt>
- <wpt lat="28.358987113" lon="-16.499790202">
- <name>wpt6</name>
- <cmt>wpt6</cmt>
- <desc>wpt6</desc>
- <sym>flag, green</sym>
- </wpt>
- <rte>
- <name>Route1</name>
- <rtept lat="28.354379680" lon="-16.495831262">
- <name>RPT001</name>
- </rtept>
- <rtept lat="28.354813996" lon="-16.495434295">
- <name>RPT002</name>
- </rtept>
- <rtept lat="28.355380492" lon="-16.494962226">
- <name>RPT003</name>
- </rtept>
- <rtept lat="28.355946985" lon="-16.494726192">
- <name>RPT004</name>
- </rtept>
- <rtept lat="28.356522916" lon="-16.494490157">
- <name>RPT005</name>
- </rtept>
- <rtept lat="28.356994989" lon="-16.494393598">
- <name>RPT006</name>
- </rtept>
- <rtept lat="28.357646446" lon="-16.494318496">
- <name>RPT007</name>
- </rtept>
- <rtept lat="28.358165720" lon="-16.494415056">
- <name>RPT008</name>
- </rtept>
- <rtept lat="28.358609462" lon="-16.494683276">
- <name>RPT009</name>
- </rtept>
- <rtept lat="28.359147614" lon="-16.495327007">
- <name>RPT010</name>
- </rtept>
- <rtept lat="28.359374203" lon="-16.496067296">
- <name>RPT011</name>
- </rtept>
- <rtept lat="28.359411968" lon="-16.496818315">
- <name>RPT012</name>
- </rtept>
- <rtept lat="28.359355321" lon="-16.497612249">
- <name>RPT013</name>
- </rtept>
- <rtept lat="28.359100408" lon="-16.498416911">
- <name>RPT014</name>
- </rtept>
- <rtept lat="28.359005995" lon="-16.498888980">
- <name>RPT015</name>
- </rtept>
- <rtept lat="28.358987113" lon="-16.499790202">
- <name>RPT016</name>
- </rtept>
- <rtept lat="28.358826611" lon="-16.501227866">
- <name>RPT017</name>
- </rtept>
- <rtept lat="28.358656668" lon="-16.502161275">
- <name>RPT018</name>
- </rtept>
- <rtept lat="28.358052424" lon="-16.502794276">
- <name>RPT019</name>
- </rtept>
- <rtept lat="28.357419853" lon="-16.502944480">
- <name>RPT020</name>
- </rtept>
- <rtept lat="28.356683421" lon="-16.502955209">
- <name>RPT021</name>
- </rtept>
- <rtept lat="28.356135815" lon="-16.502697717">
- <name>RPT022</name>
- </rtept>
- <rtept lat="28.355389933" lon="-16.502150546">
- <name>RPT023</name>
- </rtept>
- <rtept lat="28.355002828" lon="-16.501710664">
- <name>RPT024</name>
- </rtept>
- <rtept lat="28.354521305" lon="-16.500734340">
- <name>RPT025</name>
- </rtept>
- <rtept lat="28.354228613" lon="-16.499983321">
- <name>RPT026</name>
- </rtept>
- <rtept lat="28.353935921" lon="-16.498942624">
- <name>RPT027</name>
- </rtept>
- <rtept lat="28.353803737" lon="-16.497987758">
- <name>RPT028</name>
- </rtept>
- <rtept lat="28.353926479" lon="-16.496775399">
- <name>RPT029</name>
- </rtept>
- <rtept lat="28.353926479" lon="-16.496775399">
- <name>RPT030</name>
- </rtept>
- </rte>
- <trk>
- <name>Track1</name>
- <trkseg>
- <trkpt lat="28.359546000" lon="-16.502867000">
- <time>2011-09-26T00:00:00Z</time>
- </trkpt>
- <trkpt lat="28.359338000" lon="-16.502598000">
- <time>2011-09-26T00:00:04Z</time>
- </trkpt>
- <trkpt lat="28.359270000" lon="-16.502511000">
- <time>2011-09-26T00:00:05Z</time>
- </trkpt>
- <trkpt lat="28.359204000" lon="-16.502291000">
- <time>2011-09-26T00:00:08Z</time>
- </trkpt>
- <trkpt lat="28.359192000" lon="-16.501396000">
- <time>2011-09-26T00:00:18Z</time>
- </trkpt>
- <trkpt lat="28.359106000" lon="-16.501013000">
- <time>2011-09-26T00:00:23Z</time>
- </trkpt>
- <trkpt lat="28.358917000" lon="-16.500654000">
- <time>2011-09-26T00:00:28Z</time>
- </trkpt>
- <trkpt lat="28.358626000" lon="-16.500342000">
- <time>2011-09-26T00:00:33Z</time>
- </trkpt>
- <trkpt lat="28.358246000" lon="-16.500081000">
- <time>2011-09-26T00:00:39Z</time>
- </trkpt>
- <trkpt lat="28.357937000" lon="-16.499408000">
- <time>2011-09-26T00:00:48Z</time>
- </trkpt>
- <trkpt lat="28.357846000" lon="-16.499208000">
- <time>2011-09-26T00:00:51Z</time>
- </trkpt>
- <trkpt lat="28.357735000" lon="-16.499147000">
- <time>2011-09-26T00:00:52Z</time>
- </trkpt>
- <trkpt lat="28.357665000" lon="-16.499194000">
- <time>2011-09-26T00:00:54Z</time>
- </trkpt>
- <trkpt lat="28.357640000" lon="-16.499329000">
- <time>2011-09-26T00:00:55Z</time>
- </trkpt>
- <trkpt lat="28.357788000" lon="-16.499707000">
- <time>2011-09-26T00:01:00Z</time>
- </trkpt>
- <trkpt lat="28.357825000" lon="-16.500150000">
- <time>2011-09-26T00:01:05Z</time>
- </trkpt>
- <trkpt lat="28.357952000" lon="-16.500374000">
- <time>2011-09-26T00:01:08Z</time>
- </trkpt>
- <trkpt lat="28.358219000" lon="-16.500677000">
- <time>2011-09-26T00:01:13Z</time>
- </trkpt>
- <trkpt lat="28.358334000" lon="-16.500943000">
- <time>2011-09-26T00:01:17Z</time>
- </trkpt>
- <trkpt lat="28.358359000" lon="-16.501330000">
- <time>2011-09-26T00:01:21Z</time>
- </trkpt>
- <trkpt lat="28.358330000" lon="-16.501666000">
- <time>2011-09-26T00:01:25Z</time>
- </trkpt>
- <trkpt lat="28.358231000" lon="-16.501900000">
- <time>2011-09-26T00:01:28Z</time>
- </trkpt>
- <trkpt lat="28.357924000" lon="-16.502231000">
- <time>2011-09-26T00:01:34Z</time>
- </trkpt>
- <trkpt lat="28.357698000" lon="-16.502363000">
- <time>2011-09-26T00:01:37Z</time>
- </trkpt>
- <trkpt lat="28.357644000" lon="-16.502394000">
- <time>2011-09-26T00:01:38Z</time>
- </trkpt>
- <trkpt lat="28.357576000" lon="-16.502446000">
- <time>2011-09-26T00:01:39Z</time>
- </trkpt>
- <trkpt lat="28.357330000" lon="-16.502535000">
- <time>2011-09-26T00:01:43Z</time>
- </trkpt>
- <trkpt lat="28.356993000" lon="-16.502545000">
- <time>2011-09-26T00:01:47Z</time>
- </trkpt>
- <trkpt lat="28.356918000" lon="-16.502569000">
- <time>2011-09-26T00:01:48Z</time>
- </trkpt>
- <trkpt lat="28.356687000" lon="-16.502552000">
- <time>2011-09-26T00:01:51Z</time>
- </trkpt>
- <trkpt lat="28.356734000" lon="-16.502402000">
- <time>2011-09-26T00:01:53Z</time>
- </trkpt>
- <trkpt lat="28.356577000" lon="-16.502170000">
- <time>2011-09-26T00:01:57Z</time>
- </trkpt>
- <trkpt lat="28.356407000" lon="-16.501902000">
- <time>2011-09-26T00:02:01Z</time>
- </trkpt>
- <trkpt lat="28.356256000" lon="-16.501634000">
- <time>2011-09-26T00:02:04Z</time>
- </trkpt>
- <trkpt lat="28.355854000" lon="-16.501039000">
- <time>2011-09-26T00:02:13Z</time>
- </trkpt>
- <trkpt lat="28.355698000" lon="-16.500794000">
- <time>2011-09-26T00:02:17Z</time>
- </trkpt>
- <trkpt lat="28.355463000" lon="-16.500421000">
- <time>2011-09-26T00:02:22Z</time>
- </trkpt>
- <trkpt lat="28.355083000" lon="-16.500100000">
- <time>2011-09-26T00:02:28Z</time>
- </trkpt>
- <trkpt lat="28.354960000" lon="-16.499323000">
- <time>2011-09-26T00:02:38Z</time>
- </trkpt>
- <trkpt lat="28.354927000" lon="-16.499073000">
- <time>2011-09-26T00:02:41Z</time>
- </trkpt>
- <trkpt lat="28.354983000" lon="-16.498794000">
- <time>2011-09-26T00:02:44Z</time>
- </trkpt>
- <trkpt lat="28.354923000" lon="-16.498684000">
- <time>2011-09-26T00:02:46Z</time>
- </trkpt>
- <trkpt lat="28.354913000" lon="-16.498582000">
- <time>2011-09-26T00:02:47Z</time>
- </trkpt>
- <trkpt lat="28.354651000" lon="-16.498306000">
- <time>2011-09-26T00:02:52Z</time>
- </trkpt>
- <trkpt lat="28.354870000" lon="-16.497995000">
- <time>2011-09-26T00:02:56Z</time>
- </trkpt>
- <trkpt lat="28.354776000" lon="-16.497697000">
- <time>2011-09-26T00:03:00Z</time>
- </trkpt>
- <trkpt lat="28.354747000" lon="-16.497604000">
- <time>2011-09-26T00:03:01Z</time>
- </trkpt>
- <trkpt lat="28.354516000" lon="-16.497422000">
- <time>2011-09-26T00:03:05Z</time>
- </trkpt>
- <trkpt lat="28.354305000" lon="-16.497400000">
- <time>2011-09-26T00:03:08Z</time>
- </trkpt>
- <trkpt lat="28.354172000" lon="-16.497408000">
- <time>2011-09-26T00:03:09Z</time>
- </trkpt>
- </trkseg>
- </trk>
-</gpx>
--- /dev/null
+No,Latitude,Longitude,Name,Symbol,Date,Time\r
+1,28.357846,-16.499208,"Derecha","right",2011/09/26,00:00:51\r
+2,28.359546,-16.502867,"LAP001","Waypoint",2011/09/26,00:00:00\r
+3,28.355463,-16.500421,"Valle","valley",2011/09/26,00:02:22\r
+4,28.359197,-16.501778,"wpt1","flag, green",2011/09/26,00:00:13.732\r
+5,28.354172,-16.497408,"wpt5","flag, green",2011/09/26,00:03:09\r
+6,28.358886,-16.500621,"wpt6","flag, green",2011/09/26,00:00:28.528\r
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>
-<gpx version="1.0" creator="GPSBabel - https://www.gpsbabel.org" xmlns="http://www.topografix.com/GPX/1/0">
- <time>1970-01-01T00:00:00Z</time>
- <bounds minlat="28.353803737" minlon="-16.502955209" maxlat="28.359546000" maxlon="-16.494318496"/>
- <wpt lat="28.357846000" lon="-16.499208000">
- <time>2011-09-26T00:00:51Z</time>
- <name>Derecha</name>
- <cmt>Derecha</cmt>
- <desc>Derecha</desc>
- <sym>right</sym>
- </wpt>
- <wpt lat="28.359546000" lon="-16.502867000">
- <time>2011-09-26T00:00:00Z</time>
- <name>LAP001</name>
- <cmt>LAP001</cmt>
- <desc>LAP001</desc>
- </wpt>
- <wpt lat="28.355463000" lon="-16.500421000">
- <time>2011-09-26T00:02:22Z</time>
- <name>Valle</name>
- <cmt>Valle</cmt>
- <desc>Valle</desc>
- <sym>valley</sym>
- </wpt>
- <wpt lat="28.359197123" lon="-16.501778011">
- <time>2011-09-26T00:00:13.732Z</time>
- <name>wpt1</name>
- <cmt>wpt1</cmt>
- <desc>wpt1</desc>
- <sym>flag, green</sym>
- </wpt>
- <wpt lat="28.354172000" lon="-16.497408000">
- <time>2011-09-26T00:03:09Z</time>
- <name>wpt5</name>
- <cmt>wpt5</cmt>
- <desc>wpt5</desc>
- <sym>flag, green</sym>
- </wpt>
- <wpt lat="28.358886268" lon="-16.500621050">
- <time>2011-09-26T00:00:28.528Z</time>
- <name>wpt6</name>
- <cmt>wpt6</cmt>
- <desc>wpt6</desc>
- <sym>flag, green</sym>
- </wpt>
- <rte>
- <name>Route1</name>
- <rtept lat="28.354379680" lon="-16.495831262">
- <name>RPT001</name>
- </rtept>
- <rtept lat="28.354813996" lon="-16.495434295">
- <name>RPT002</name>
- </rtept>
- <rtept lat="28.355380492" lon="-16.494962226">
- <name>RPT003</name>
- </rtept>
- <rtept lat="28.355946985" lon="-16.494726192">
- <name>RPT004</name>
- </rtept>
- <rtept lat="28.356522916" lon="-16.494490157">
- <name>RPT005</name>
- </rtept>
- <rtept lat="28.356994989" lon="-16.494393598">
- <name>RPT006</name>
- </rtept>
- <rtept lat="28.357646446" lon="-16.494318496">
- <name>RPT007</name>
- </rtept>
- <rtept lat="28.358165720" lon="-16.494415056">
- <name>RPT008</name>
- </rtept>
- <rtept lat="28.358609462" lon="-16.494683276">
- <name>RPT009</name>
- </rtept>
- <rtept lat="28.359147614" lon="-16.495327007">
- <name>RPT010</name>
- </rtept>
- <rtept lat="28.359374203" lon="-16.496067296">
- <name>RPT011</name>
- </rtept>
- <rtept lat="28.359411968" lon="-16.496818315">
- <name>RPT012</name>
- </rtept>
- <rtept lat="28.359355321" lon="-16.497612249">
- <name>RPT013</name>
- </rtept>
- <rtept lat="28.359100408" lon="-16.498416911">
- <name>RPT014</name>
- </rtept>
- <rtept lat="28.359005995" lon="-16.498888980">
- <name>RPT015</name>
- </rtept>
- <rtept lat="28.358987113" lon="-16.499790202">
- <name>RPT016</name>
- </rtept>
- <rtept lat="28.358826611" lon="-16.501227866">
- <name>RPT017</name>
- </rtept>
- <rtept lat="28.358656668" lon="-16.502161275">
- <name>RPT018</name>
- </rtept>
- <rtept lat="28.358052424" lon="-16.502794276">
- <name>RPT019</name>
- </rtept>
- <rtept lat="28.357419853" lon="-16.502944480">
- <name>RPT020</name>
- </rtept>
- <rtept lat="28.356683421" lon="-16.502955209">
- <name>RPT021</name>
- </rtept>
- <rtept lat="28.356135815" lon="-16.502697717">
- <name>RPT022</name>
- </rtept>
- <rtept lat="28.355389933" lon="-16.502150546">
- <name>RPT023</name>
- </rtept>
- <rtept lat="28.355002828" lon="-16.501710664">
- <name>RPT024</name>
- </rtept>
- <rtept lat="28.354521305" lon="-16.500734340">
- <name>RPT025</name>
- </rtept>
- <rtept lat="28.354228613" lon="-16.499983321">
- <name>RPT026</name>
- </rtept>
- <rtept lat="28.353935921" lon="-16.498942624">
- <name>RPT027</name>
- </rtept>
- <rtept lat="28.353803737" lon="-16.497987758">
- <name>RPT028</name>
- </rtept>
- <rtept lat="28.353926479" lon="-16.496775399">
- <name>RPT029</name>
- </rtept>
- <rtept lat="28.353926479" lon="-16.496775399">
- <name>RPT030</name>
- </rtept>
- </rte>
- <trk>
- <name>Track1</name>
- <trkseg>
- <trkpt lat="28.359546000" lon="-16.502867000">
- <time>2011-09-26T00:00:00Z</time>
- </trkpt>
- <trkpt lat="28.359338000" lon="-16.502598000">
- <time>2011-09-26T00:00:04Z</time>
- </trkpt>
- <trkpt lat="28.359270000" lon="-16.502511000">
- <time>2011-09-26T00:00:05Z</time>
- </trkpt>
- <trkpt lat="28.359204000" lon="-16.502291000">
- <time>2011-09-26T00:00:08Z</time>
- </trkpt>
- <trkpt lat="28.359192000" lon="-16.501396000">
- <time>2011-09-26T00:00:18Z</time>
- </trkpt>
- <trkpt lat="28.359106000" lon="-16.501013000">
- <time>2011-09-26T00:00:23Z</time>
- </trkpt>
- <trkpt lat="28.358917000" lon="-16.500654000">
- <time>2011-09-26T00:00:28Z</time>
- </trkpt>
- <trkpt lat="28.358626000" lon="-16.500342000">
- <time>2011-09-26T00:00:33Z</time>
- </trkpt>
- <trkpt lat="28.358246000" lon="-16.500081000">
- <time>2011-09-26T00:00:39Z</time>
- </trkpt>
- <trkpt lat="28.357937000" lon="-16.499408000">
- <time>2011-09-26T00:00:48Z</time>
- </trkpt>
- <trkpt lat="28.357846000" lon="-16.499208000">
- <time>2011-09-26T00:00:51Z</time>
- </trkpt>
- <trkpt lat="28.357735000" lon="-16.499147000">
- <time>2011-09-26T00:00:52Z</time>
- </trkpt>
- <trkpt lat="28.357665000" lon="-16.499194000">
- <time>2011-09-26T00:00:54Z</time>
- </trkpt>
- <trkpt lat="28.357640000" lon="-16.499329000">
- <time>2011-09-26T00:00:55Z</time>
- </trkpt>
- <trkpt lat="28.357788000" lon="-16.499707000">
- <time>2011-09-26T00:01:00Z</time>
- </trkpt>
- <trkpt lat="28.357825000" lon="-16.500150000">
- <time>2011-09-26T00:01:05Z</time>
- </trkpt>
- <trkpt lat="28.357952000" lon="-16.500374000">
- <time>2011-09-26T00:01:08Z</time>
- </trkpt>
- <trkpt lat="28.358219000" lon="-16.500677000">
- <time>2011-09-26T00:01:13Z</time>
- </trkpt>
- <trkpt lat="28.358334000" lon="-16.500943000">
- <time>2011-09-26T00:01:17Z</time>
- </trkpt>
- <trkpt lat="28.358359000" lon="-16.501330000">
- <time>2011-09-26T00:01:21Z</time>
- </trkpt>
- <trkpt lat="28.358330000" lon="-16.501666000">
- <time>2011-09-26T00:01:25Z</time>
- </trkpt>
- <trkpt lat="28.358231000" lon="-16.501900000">
- <time>2011-09-26T00:01:28Z</time>
- </trkpt>
- <trkpt lat="28.357924000" lon="-16.502231000">
- <time>2011-09-26T00:01:34Z</time>
- </trkpt>
- <trkpt lat="28.357698000" lon="-16.502363000">
- <time>2011-09-26T00:01:37Z</time>
- </trkpt>
- <trkpt lat="28.357644000" lon="-16.502394000">
- <time>2011-09-26T00:01:38Z</time>
- </trkpt>
- <trkpt lat="28.357576000" lon="-16.502446000">
- <time>2011-09-26T00:01:39Z</time>
- </trkpt>
- <trkpt lat="28.357330000" lon="-16.502535000">
- <time>2011-09-26T00:01:43Z</time>
- </trkpt>
- <trkpt lat="28.356993000" lon="-16.502545000">
- <time>2011-09-26T00:01:47Z</time>
- </trkpt>
- <trkpt lat="28.356918000" lon="-16.502569000">
- <time>2011-09-26T00:01:48Z</time>
- </trkpt>
- <trkpt lat="28.356687000" lon="-16.502552000">
- <time>2011-09-26T00:01:51Z</time>
- </trkpt>
- <trkpt lat="28.356734000" lon="-16.502402000">
- <time>2011-09-26T00:01:53Z</time>
- </trkpt>
- <trkpt lat="28.356577000" lon="-16.502170000">
- <time>2011-09-26T00:01:57Z</time>
- </trkpt>
- <trkpt lat="28.356407000" lon="-16.501902000">
- <time>2011-09-26T00:02:01Z</time>
- </trkpt>
- <trkpt lat="28.356256000" lon="-16.501634000">
- <time>2011-09-26T00:02:04Z</time>
- </trkpt>
- <trkpt lat="28.355854000" lon="-16.501039000">
- <time>2011-09-26T00:02:13Z</time>
- </trkpt>
- <trkpt lat="28.355698000" lon="-16.500794000">
- <time>2011-09-26T00:02:17Z</time>
- </trkpt>
- <trkpt lat="28.355463000" lon="-16.500421000">
- <time>2011-09-26T00:02:22Z</time>
- </trkpt>
- <trkpt lat="28.355083000" lon="-16.500100000">
- <time>2011-09-26T00:02:28Z</time>
- </trkpt>
- <trkpt lat="28.354960000" lon="-16.499323000">
- <time>2011-09-26T00:02:38Z</time>
- </trkpt>
- <trkpt lat="28.354927000" lon="-16.499073000">
- <time>2011-09-26T00:02:41Z</time>
- </trkpt>
- <trkpt lat="28.354983000" lon="-16.498794000">
- <time>2011-09-26T00:02:44Z</time>
- </trkpt>
- <trkpt lat="28.354923000" lon="-16.498684000">
- <time>2011-09-26T00:02:46Z</time>
- </trkpt>
- <trkpt lat="28.354913000" lon="-16.498582000">
- <time>2011-09-26T00:02:47Z</time>
- </trkpt>
- <trkpt lat="28.354651000" lon="-16.498306000">
- <time>2011-09-26T00:02:52Z</time>
- </trkpt>
- <trkpt lat="28.354870000" lon="-16.497995000">
- <time>2011-09-26T00:02:56Z</time>
- </trkpt>
- <trkpt lat="28.354776000" lon="-16.497697000">
- <time>2011-09-26T00:03:00Z</time>
- </trkpt>
- <trkpt lat="28.354747000" lon="-16.497604000">
- <time>2011-09-26T00:03:01Z</time>
- </trkpt>
- <trkpt lat="28.354516000" lon="-16.497422000">
- <time>2011-09-26T00:03:05Z</time>
- </trkpt>
- <trkpt lat="28.354305000" lon="-16.497400000">
- <time>2011-09-26T00:03:08Z</time>
- </trkpt>
- <trkpt lat="28.354172000" lon="-16.497408000">
- <time>2011-09-26T00:03:09Z</time>
- </trkpt>
- </trkseg>
- </trk>
-</gpx>
\r
Header Name Description Type Position Altitude Depth Proximity Temperature Display Mode Color Symbol Facility City State Country Date Modified Link Categories\r
\r
-Waypoint 001 Map Line N50 29.556188732 E12 06.325848140 Symbol Unknown Waypoint 28/03/2006 00:10:37\r
-Waypoint 002 Map Intersection N50 29.556188732 E12 06.325848140 Symbol Unknown Waypoint 28/03/2006 00:10:37\r
-Waypoint 003 Map Intersection N50 29.656610638 E12 06.307823695 Symbol Unknown Waypoint 28/03/2006 00:10:37\r
-Waypoint 004 Map Line N50 29.630036652 E12 06.366030984 Symbol Unknown Waypoint 28/03/2006 00:10:37\r
-Waypoint 005 Map Line N50 29.630036652 E12 06.366030984 Symbol Unknown Waypoint 28/03/2006 00:10:37\r
-Waypoint 006 Map Intersection N50 29.602537304 E12 06.426270045 Symbol Unknown Waypoint 28/03/2006 00:10:37\r
-Waypoint 007 Map Line N50 29.619586095 E12 06.429106481 Symbol Unknown Waypoint 28/03/2006 00:10:37\r
-Waypoint ED_X Dummy airport (Germany) Airport N51 53.627961650 E12 58.676564991 Symbol & Name Unknown Airport FAC1 CITY1 Germany (civil) 28/03/2006 01:38:07\r
-Waypoint GC_X Dummy airport (Spain) Airport N38 37.919719778 W3 10.443304181 Symbol & Name Unknown Airport FAC2 CITY2 Spain (Canary Islands) 28/03/2006 01:42:01\r
-Waypoint Jahnstrasse Jahnstrasse 11 User Waypoint N50 29.619998485 E12 06.429000869 Symbol & Description Unknown Flag, Red 31/03/2006 21:48:22\r
-Waypoint LF_X Dummy airport (France) Airport N46 23.256332763 E3 29.896638617 Symbol & Name Unknown Airport FAC3 CITY3 France (Metropolitan France; including Saint-Pierre and Miquelon) 28/03/2006 01:40:32\r
-Waypoint LI_X Dummy airport (Italy) Airport N43 18.873018846 E12 09.693240859 Symbol & Name Unknown Heliport FAC4 CITY4 Italy 28/03/2006 01:43:25\r
-Waypoint Liebknechtstrasse Liebknechtstrasse 90 User Waypoint N50 29.630041681 E12 06.366015896 Symbol & Name Unknown Waypoint 31/03/2006 21:49:30\r
+Waypoint 001 Map Line N50 29.556188732 E12 06.325848140 Symbol Unknown Waypoint 28/03/2006 00:10:37 \r
+Waypoint 002 Map Intersection N50 29.556188732 E12 06.325848140 Symbol Unknown Waypoint 28/03/2006 00:10:37 \r
+Waypoint 003 Map Intersection N50 29.656610638 E12 06.307823695 Symbol Unknown Waypoint 28/03/2006 00:10:37 \r
+Waypoint 004 Map Line N50 29.630036652 E12 06.366030984 Symbol Unknown Waypoint 28/03/2006 00:10:37 \r
+Waypoint 005 Map Line N50 29.630036652 E12 06.366030984 Symbol Unknown Waypoint 28/03/2006 00:10:37 \r
+Waypoint 006 Map Intersection N50 29.602537304 E12 06.426270045 Symbol Unknown Waypoint 28/03/2006 00:10:37 \r
+Waypoint 007 Map Line N50 29.619586095 E12 06.429106481 Symbol Unknown Waypoint 28/03/2006 00:10:37 \r
+Waypoint ED_X Dummy airport (Germany) Airport N51 53.627961650 E12 58.676564991 Symbol & Name Unknown Airport FAC1 CITY1 Germany (civil) 28/03/2006 01:38:07 \r
+Waypoint GC_X Dummy airport (Spain) Airport N38 37.919719778 W3 10.443304181 Symbol & Name Unknown Airport FAC2 CITY2 Spain (Canary Islands) 28/03/2006 01:42:01 \r
+Waypoint Jahnstrasse Jahnstrasse 11 User Waypoint N50 29.619998485 E12 06.429000869 Symbol & Description Unknown Flag, Red 31/03/2006 21:48:22 \r
+Waypoint LF_X Dummy airport (France) Airport N46 23.256332763 E3 29.896638617 Symbol & Name Unknown Airport FAC3 CITY3 France (Metropolitan France; including Saint-Pierre and Miquelon) 28/03/2006 01:40:32 \r
+Waypoint LI_X Dummy airport (Italy) Airport N43 18.873018846 E12 09.693240859 Symbol & Name Unknown Heliport FAC4 CITY4 Italy 28/03/2006 01:43:25 \r
+Waypoint Liebknechtstrasse Liebknechtstrasse 90 User Waypoint N50 29.630041681 E12 06.366015896 Symbol & Name Unknown Waypoint 31/03/2006 21:49:30 \r
Waypoint NARVA Start User Waypoint N50 29.556958191 E12 06.326884143 391 m Symbol Unknown Flag, Green 31/03/2006 21:49:26 http://www.narva-light.de Category 15\r
\r
\r
Header Name Length Course Waypoints Link\r
\r
-Route ED_X-LF_X 4087 km 232° true 4 waypoints\r
+Route ED_X-LF_X 4087 km 232° true 4 waypoints \r
\r
Header Waypoint Name Distance Leg Length Course\r
\r
Route Waypoint LI_X 3323 km 1388 km 63° true\r
Route Waypoint LF_X 4087 km 764 km 300° true\r
\r
-Route NARVA to Jahnstrasse 394 m 46° true 10 waypoints\r
+Route NARVA to Jahnstrasse 394 m 46° true 10 waypoints \r
\r
Header Waypoint Name Distance Leg Length Course\r
\r
Route Waypoint 004 274 m 85 m 126° true\r
Route Waypoint Liebknechtstrasse 274 m 0 m 298° true\r
Route Waypoint 005 274 m 0 m 118° true\r
-Route Waypoint 006 361 m 88 m 126° true\r
+Route Waypoint 006 362 m 88 m 126° true\r
Route Waypoint 007 393 m 32 m 6° true\r
Route Waypoint Jahnstrasse 394 m 1 m 351° true\r
\r
\r
Header Name Start Time Elapsed Time Length Average Speed Link\r
\r
-Track ACTIVE LOG 006 01/05/2005 15:02:47 0:33:09 653 m 1.2 kph\r
+Track ACTIVE LOG 006 01/05/2005 15:02:47 0:33:09 653 m 1.2 kph \r
\r
Header Position Time Altitude Depth Temperature Leg Length Leg Time Leg Speed Leg Course\r
\r
rm -f ${TMPDIR}/arc-project*
# Test 1: rte & trk options
-gpsbabel -i gpx -f ${REFERENCE}/arc-project.gpx -x arc,rte,exclude,distance=0.1K -x arc,trk,exclude,distance=0.1K -o gpx -F ${TMPDIR}/arc-project1.gpx
-compare ${REFERENCE}/arc-project1.gpx ${TMPDIR}/arc-project1.gpx
+gpsbabel -i gpx -f ${REFERENCE}/arc-project.gpx -x arc,rte,exclude,distance=0.1K -x arc,trk,exclude,distance=0.1K -o unicsv,utc -F ${TMPDIR}/arc-project1.csv
+compare ${REFERENCE}/arc-project1.csv ${TMPDIR}/arc-project1.csv
# Test 2: rte, project & points options
-gpsbabel -i gpx -f ${REFERENCE}/arc-project.gpx -x arc,rte,project,points,distance=0.1K -o gpx -F ${TMPDIR}/arc-project2.gpx
-compare ${REFERENCE}/arc-project2.gpx ${TMPDIR}/arc-project2.gpx
+gpsbabel -i gpx -f ${REFERENCE}/arc-project.gpx -x arc,rte,project,points,distance=0.1K -o unicsv,utc -F ${TMPDIR}/arc-project2.csv
+compare ${REFERENCE}/arc-project2.csv ${TMPDIR}/arc-project2.csv
# Test 3: trk & project options
-gpsbabel -i gpx -f ${REFERENCE}/arc-project.gpx -x arc,trk,project,distance=0.1K -o gpx -F ${TMPDIR}/arc-project3.gpx
-compare ${REFERENCE}/arc-project3.gpx ${TMPDIR}/arc-project3.gpx
+gpsbabel -i gpx -f ${REFERENCE}/arc-project.gpx -x arc,trk,project,distance=0.1K -o unicsv,utc -F ${TMPDIR}/arc-project3.csv
+compare ${REFERENCE}/arc-project3.csv ${TMPDIR}/arc-project3.csv
# Test 4: Verify that filter names aren't case sensistive. (Actually has
-# nothing specific to arc...)
-gpsbabel -i gpx -f ${REFERENCE}/arc-project.gpx -x ArC,trk,project,distance=0.1K -o gpx -F ${TMPDIR}/arc-project3.gpx
-compare ${REFERENCE}/arc-project3.gpx ${TMPDIR}/arc-project3.gpx
+# nothing specific to arc...)
+gpsbabel -i gpx -f ${REFERENCE}/arc-project.gpx -x ArC,trk,project,distance=0.1K -o unicsv,utc -F ${TMPDIR}/arc-project3.csv
+compare ${REFERENCE}/arc-project3.csv ${TMPDIR}/arc-project3.csv
gcgeodist(const double lat1, const double lon1,
const double lat2, const double lon2)
{
- double res = radtometers(gcdist(RAD(lat1), RAD(lon1), RAD(lat2), RAD(lon2)));
- if (res < 0.1) {
- res = 0; /* calc. diffs on 32- and 64-bit hosts */
- }
-
- return res;
+ return radtometers(gcdist(RAD(lat1), RAD(lon1), RAD(lat2), RAD(lon2)));
}
/*